深度学习总结(五)——各优化算法

这里写图片描述


一、各优化算法简介

1. 批量梯度下降(Batch gradient descent,BGD)

θ=θηθJ(θ)
每迭代一步,都要用到训练集所有的数据。

2. 随机梯度下降(Stochastic Gradient Descent,SGD)

θ=θηθJ(θ;x(i);y(i))
通过每个样本来迭代更新一次,以损失很小的一部分精确度和增加一定数量的迭代次数为代价,换取了总体的优化效率的提升。增加的迭代次数远远小于样本的数量。

缺点:

  1. 对于参数比较敏感,需要注意参数的初始化
  2. 容易陷入局部极小值
  3. 当数据较多时,训练时间长

3. 小批量梯度下降(Mini Batch Gradient Descent,MBGD)

θ=θηθJ(θ;x(i:i+n);y(i:i+n))
为了避免SGD和标准梯度下降中存在的问题,对每个批次中的n个训练样本,这种方法只执行一次更新。

4. Momentum

vt=γvt1+ηθJ(θ)
θ=θvt
在参数更新时,一定程度上保留更新之前的方向。在训练的过程中,参数的更新方向十分依赖当前的batch,因此不稳定。加入momentum后,能够让参数一定程度上按照之前变化方向进行更新,使参数更稳定的更新。

优点:

  1. 下降初期时,使用上一次参数更新,下降方向一致,乘上较大的μ能够进行很好的加速
  2. 下降中后期时,在局部最小值来回震荡的时候,gradient→0,μ使得更新幅度增大,跳出陷阱
  3. 在梯度改变方向的时候,μ能够减少更新 总而言之,momentum项能够在相关方向加速SGD,抑制振荡,从而加快收敛

5. Nesterov(NAG)

vt=γvt1+ηθJ(θγvt1)
θ=θvt

  • 7
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值